Method and system for providing error compensation to a signal using feedback control

ABSTRACT

A method for providing error compensation to a signal includes providing error adjustment to a signal at a transmitter and communicating the signal over a channel at a channel speed. The method includes receiving the signal from the channel at the channel speed and sampling the signal at a speed less than the channel speed to yield a sampled signal. The method includes determining an error associated with the signal and determining compensation information for providing the error adjustment. The compensation information is based on the error and is determined at a compensation speed. The compensation speed is less than the channel speed. The method also includes communicating information to the transmitter for providing error adjustment. The information communicated to the transmitter may comprise the compensation information. The information communicated to the transmitter may also comprise intermediate information from which the compensation information is determined.

RELATED APPLICATIONS

[0001] This application is related to U.S. patent application Ser. No.______, entitled “METHOD AND SYSTEM FOR PROCESSING A SAMPLED SIGNAL,”Attorney's Docket 073338.0128, and U.S. patent application Ser. No.______, entitled “METHOD AND SYSTEM FOR SIGNAL PROCESSING USING VECTOROUTPUT FROM SCALAR DATA,” Attorney's Docket 073338.0130, both filedconcurrently with the present application.

TECHNICAL FIELD OF THE INVENTION

[0002] This invention relates generally to the field of datacommunication and more specifically to a method and system for providingerror compensation to a signal using feedback control.

BACKGROUND OF THE INVENTION

[0003] Signals received at a receiver are typically processed tocompensate for interference due to frequency dependent loss. As anexample, adaptive equalization is performed to compensate forinter-symbol interference due to channel loss. Known techniques foradaptive equalization have been used in the area of digitalmagnetic/optical recording and low speed digital communication such asmodem and wireless communication. These techniques typically providefull speed signal processing at the speed of the channel symbol rate forfast tracking error compensation at the receiver for channel variation.

SUMMARY OF THE INVENTION

[0004] The present invention provides a method and system for providingerror compensation to a signal using feedback control that substantiallyeliminates or reduces at least some of the disadvantages and problemsassociated with previous error compensation methods and systems.

[0005] In accordance with a particular embodiment of the presentinvention, a method for providing error compensation to a signalincludes providing error adjustment to a signal at a transmitter andcommunicating the signal over a channel at a channel speed. The methodincludes receiving the signal from the channel at the channel speed andsampling the signal at a speed less than the channel speed to yield asampled signal. The method includes determining an error associated withthe signal and determining compensation information for the erroradjustment. The compensation information is based on the error and isdetermined at a compensation speed. The compensation speed is less thanthe channel speed. The method also includes communicating information tothe transmitter for providing error adjustment.

[0006] The information communicated to the transmitter may comprise thecompensation information. The information communicated to thetransmitter may also comprise intermediate information from which thecompensation information is determined. The intermediate information maycomprise the error associated with the signal. The method may alsoinclude accumulating a plurality of cross-correlated data points of thereceived signal cross-correlated with the error and forming across-correlation vector from the cross-correlated data points at thecompensation speed. The compensation speed may be less than the speed atwhich the signal is sampled and may be based on the cross-correlationvector. The method may also include sampling the determined error at asampling speed less than the channel speed.

[0007] In accordance with another embodiment, a system for providingerror compensation to a signal includes an adjustable filter positionedbefore a channel. The adjustable filter is operable to provide erroradjustment to a signal. The system includes a transmitter operable tocommunicate the signal over the channel at a channel speed and areceiver operable to receive the signal from the channel at the channelspeed. The system includes a sampling switch operable to sample thesignal at a speed less than the channel speed to yield a sampled signaland an error calculator operable to determine an error associated withthe signal. The system also includes adaptation control operable todetermine compensation information for the error adjustment. Thecompensation information is based on the error determined by the errorcalculator, and the adaptation control is operable to determine thecompensation information at a compensation speed. The compensation speedless than the channel speed. The system also includes feedback controloperable to communicate information to the adjustable filter forproviding error adjustment.

[0008] Technical advantages of particular embodiments of the presentinvention include an adaptive equalization system with feedback controlthat determines error compensation instructions or control parametersfrom a received signal and communicates such instructions to anadjustable filter positioned before the channel over which a signal isto be communicated. Thus, a transmitter with the adjustable filter isable to provide pre-emphasis to a signal to compensate for expecteddistortions. Therefore, the efficiency of a network system utilizing theadaptive equalization system may be improved.

[0009] Other technical advantages will be readily apparent to oneskilled in the art from the following figures, descriptions and claims.Moreover, while specific advantages have been enumerated above, variousembodiments may include all, some or none of the enumerated advantages.

BRIEF DESCRIPTION OF THE DRAWINGS

[0010] For a more complete understanding of particular embodiments ofthe invention and their advantages, reference is now made to thefollowing descriptions, taken in conjunction with the accompanyingdrawings, in which:

[0011]FIG. 1 illustrates a network system having a receiver with anadaptive equalization system, in accordance with an embodiment of thepresent invention;

[0012]FIG. 2 illustrates an adaptive equalization system for processinga received signal, in accordance with an embodiment of the presentinvention;

[0013]FIG. 3 illustrates an adaptive equalization system withsubsampling switches, in accordance with a particular embodiment of thepresent invention;

[0014]FIG. 4 illustrates an adaptive equalization system utilizing anaccumulator for producing vector output, in accordance with a particularembodiment of the present invention;

[0015]FIG. 5 illustrates an adaptive equalization system utilizing anaccumulator for producing vector output, in accordance with anotherembodiment of the present invention;

[0016]FIG. 6 illustrates a network system utilizing adaptiveequalization with feedback control, in accordance with a particularembodiment of the present invention;

[0017]FIG. 7 illustrates an adaptive equalization system utilizing anaccumulator and feedback control, in accordance with another embodimentof the present invention; and

[0018]FIG. 8 is a flow chart illustrating a method for providing errorcompensation to a signal using feedback control, in accordance with anembodiment of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

[0019]FIG. 1 illustrates a network system 10 having a receiver 20 withan adaptive equalization system 22, in accordance with an embodiment ofthe present invention. Adaptive equalization system 22 performs signalprocessing on a signal received at receiver 20. The signal processingmay be performed at a lower speed than the full channel speed of thesignal. Thus, the negative impact of signal processing on speed of thesignal may be reduced, and the signal speed through the channel maytherefore be improved.

[0020] Network system 10 includes network elements 12 and 14 coupledtogether by a channel 16. Network elements 12 and 14 may compriseservers, storage systems, routers, computer systems or any combinationthereof. Channel 16 communicates signals between network elements 12 and14. Channel 16 may comprise a cable having a length in the range of tento one hundred meters, for example approximately twenty to forty meters.The speed of a signal travelling over channel 16 may be in the range ofmulti-gigabits per second, for example, approximately three gigabits persecond. As an example, channel 16 may operate according to 10 GigabitAttachment Unit Interface (XAUI) standards, which require a fixedfrequency of approximately one to five gigahertz, for example, 3.125gigahertz, and which are used for 10 Gigabit Ethernet communications.

[0021] Signals traveling at high speeds are susceptible to distortionresulting from a spread impulse response of channel 16. Channel 16 maycause frequency dependent distortion due to skin effect and dieletricloss. Such distortion may cause inter-symbol interference (ISI). Toovercome ISI, multi-gigabit rate electrical communication over severaltens of meters may utilize high-degree equalization over approximatelytwenty to forty dB. Particular embodiments of the present invention useadvanced signal-processing technologies to provide high-degreeequalization to multi-gigabit rate communications over channel 16.

[0022] Network element 12 includes a transmitter 18, and, asillustrated, network element 14 includes receiver 20. Transmitter 18transmits a data sequence or signal over channel 16 to receiver 20.Adaptive equalization system 22 provides high-degree equalization toovercome ISI in the signal communicated through channel 16.

[0023]FIG. 2 illustrates an adaptive equalization system 30 forprocessing a received signal, in accordance with an embodiment of thepresent invention. Adaptive equalization system 30 includes anadjustable filter 32, a detector 34, a shift register 36, an errorcalculator 38 and adaptation control 39.

[0024] Adjustable filter 32 receives a signal that has been transmittedover a channel, such as channel 16 of FIG. 1. Adjustable filter 32compensates for distortion in the signal caused by the channel. Controland adjustment of adjustable filter 32 is provided by adaptation control39. Particular embodiments may utilize an adjustable filter implementedas a discrete-time digital filter, a discrete-time analog filter or acontinuous-time analog filter.

[0025] After the signal has passed through adjustable filter 32, ittravels to detector 34, which recovers the originally transmitted datasequence. Detector 34 may be any of a number of types of detectors, suchas a decision feedback detector or a direct detector. Shift register 36provides a delay element to form a vector composed of a series of datapoints from the signal. The signal is sampled at a particular intervalbefore entering error calculator 38. Error calculator 38 performs signalprocessing to calculate an error associated with the sampled signal.Such error may comprise an amplitude error. The calculated error is thenused by adaptation control 39 to determine parameters or instructionsfor adjustable filter 32. Adjustable filter 32 uses such instructions toprovide compensation to subsequent signals for distortion caused by thechannel.

[0026] In the illustrated embodiment, component box 33 includesadjustable filter 32, detector 34 and shift register 36; and componentbox 35 includes error calculator 38 and adaptation control 39. Componentboxes 33 and 35 may be implemented as digital circuits, analog circuitsor a combination of digital and analog circuits. The components ofcomponent box 33 operate at the speed of the channel, for example thespeed of channel 16 of FIG. 1. The signal is sampled at a particularinterval before entering component box 35, so the components ofcomponent box 35 operate at such interval. Since the components ofcomponent box 35 only operate at a particular interval, such componentsoperate at a slower operational speed than the components of componentbox 33. Thus, the negative impact of the error calculation andadaptation control functions of component box 35 on the speed ofadaptive equalization system 30 is reduced since those functions onlyoperate at the intervals of the sampled signal and not at the fullchannel speed of the components of component box 33. Since error is onlydetermined at the intervals of the sampled signal, continuous errorcalculation and fast tracking compensation is sacrificed. However, suchfast tracking capability is less important in multi-gigabit rateelectrical communication for some applications. Therefore, the samplingof received signals for signal processing reduces the negative impact ofthe signal processing on the full channel speed. Thus, a higher channelspeed may be obtained.

[0027]FIG. 3 illustrates an adaptive equalization system 40 withsubsampling switches 52, in accordance with a particular embodiment ofthe present invention. Adaptive equalization system 40 receives atransmitted data sequence that has passed through channel 42. Adaptiveequalization system 40 includes an adjustable filter 44, a samplingswitch 46, a detector 48, a shift register 50, subsampling switches 52,target response filter 54, summation node 55, multiplication node 57,adaptation matrix 56, and integrator bank 58.

[0028] Adjustable filter 44 receives transmitted data sequence a_(k)after the signal has traveled over channel 42. Channel 42 causes somedistortion in the signal. Adjustable filter 44 compensates for suchdistortion caused by the channel. Control and adjustment of adjustablefilter 44 is determined by a compensation vector, filter coefficientvector c, which is produced by integrator bank 58. Particularembodiments may include an adjustable filter located after a samplingswitch or before a channel through which the signal is communicated, asillustrated with respect to FIGS. 5 and 7, respectively.

[0029] After the data sequence a_(k) has passed through adjustablefilter 44, it is sampled at sampling switch 46. Sampling switch 46yields a sampled signal {tilde over (d)}_(k). The data sequence may besampled at sampling time t=kT, where T represents a sampling period.Sampled signal {tilde over (d)}_(k) enters detector 48, which removesnoise in the signal to recover the originally transmitted noiseless datasequence â_(k).

[0030] Shift register 50 provides a delay element to form a vectorcomposed of a series of data points. The output of shift register 50 isa noiseless data vector â_(k). The length of the data vector â_(k)produced by shift register 50 depends on the characteristics of thechannel through which the signal was transmitted.

[0031] The output of shift register 50, data vector {circumflex over(a)}_(k), is sampled at subsampling switch 52 a at sampling time k=iN,where N represents a subsampling rate, to yield data vector {circumflexover (a)}_(i). The subscript i corresponds to the index of thesub-sampled data series, and {circumflex over (a)}_(i) is an abbreviatednotation of {circumflex over (a)}_(iN) that is a sub-sampled data serieswith sub-sampling rate of N. Thus, {circumflex over (a)}_(i) refers to{circumflex over (a)}_(0N), {circumflex over (a)}_(1N), {circumflex over(a)}_(2N), {circumflex over (a)}_(3N), . . . {circumflex over (a)}_(iN). . . . It should be understood that subsampling or subsampling switchesas used herein may also refer to sampling or sampling switches,respectively. Target response filter 54 calculates a subsampled expectedpredetection signal {circumflex over (d)}_(i), or the signal that isexpected to be output from adjustable filter 44. Particular embodimentsmay include a target response filter positioned before subsamplingoccurs, as illustrated in FIG. 5.

[0032] Subsampling switch 52 b subsamples the sampled signal {tilde over(d)}_(k) at sampling time k=iN to generate subsampled signal {tilde over(d)}_(i). At summation node 55, the subsampled signal {tilde over(d)}_(i) is subtracted from the expected subsampled signal {circumflexover (d)}_(i) to yield error e_(i). Thus, error e_(i) is the differencebetween the actual subsampled signal and the expected subsampled signal.

[0033] At multiplication node 57, the error e_(i) is multiplied by thenoiseless data vector {circumflex over (a)}_(i). The product of suchmultiplication is sent to adaptation matrix 56, which translates thisinformation regarding the error of cross-correlation vectore_(i)*{circumflex over (a)}_(i) into parameters or instructions foradjustable filter 44. Such instructions enter integrator bank 58, whichmay comprise one or a plurality of integrators. Integrator bank 58produces a compensation vector, filter coefficient vector c, whichcontrols adjustable filter 44 to adjust the compensation provided by thefilter. Thus, the calculation of error e_(i) for a subsampled signal isused to adjust subsequent signals passing through adjustable filter 44to compensate for distortion caused by channel 42.

[0034] Component boxes 43 and 45 may be implemented as digital circuits,analog circuits or a combination of digital and analog circuits. Thecomponents of component box 43 operate at the full speed of channel 42,and the components of component box 45 operate at 1/N speed of thechannel. In particular embodiments, the subsampling rate N ofsubsampling switches 52 may be approximately thirty-two or larger.Therefore, subsampling switches 52 a and 52 b enable signal processingto be performed at a slower rate than the rate of the signal passingthrough the channel. The physical characteristics of the channel do nottypically vary significantly. Thus, the error e_(i) does not need to becalculated at the full speed of the channel. Accordingly, particularembodiments of the present invention may utilize subsampling tocompensate for interference. Utilizing subsampling to calculate theerror e_(i) reduces the negative impact of the circuitry needed tocalculate the error e_(i) on the speed of continuous data sequence a_(k)passing through the adaptive equalization system. Thus, the speed of thedata sequence through the equalizer may be faster, and the overallefficiency of adaptive equalization system 40 may be improved.

[0035]FIG. 4 illustrates an adaptive equalization system 130 utilizingan accumulator 140 to form vector output, in accordance with anotherembodiment of the present invention. Adaptive equalization system 130includes an adjustable filter 132, a detector 134, an error calculator136, a processor 138, an accumulator 140 and adaptation control 142.

[0036] Adjustable filter 132 receives a signal that has been transmittedover a channel, such as channel 16 of FIG. 1. Adjustable filter 132compensates for distortion in the signal caused by the channel.Adaptation control 142 provides control and adjustment parameters foradjustable filter 132.

[0037] After the signal has passed through adjustable filter 132, ittravels to detector 134 which recovers the originally transmitted datasequence. Error calculator 136 performs signal processing to calculatean error associated with the signal. The error is sampled at aparticular interval before entering processor 138. In particularembodiments, the signal may be sampled before calculating the error. Insuch cases, the error is calculated from the sampled signal.

[0038] After the error is sampled, it is received by processor 138.Processor 138 uses sampled outputs of detector 134 to process datapoints for cross-correlation with the sampled error. The processing ofprocessor 138 is sent to accumulator 140. Accumulator 140 creates across-correlation vector output based on the serial operation ofprocessor 138. Accumulator 140 waits to receive multiple data pointscross-correlated with error from processor 138 to create thecross-correlation vector output. Processor 138 may utilize a low-passfilter and a pulse generator controlled by accumulator 140 in itsprocessing operations. The vector output of accumulator 140 is utilizedby adaptation control 142 to determine parameters or instructions foradjustable filter 132. Adjustable filter 132 uses such instructions toprovide compensation to subsequent signals for distortion caused by thechannel.

[0039] In the illustrated embodiment, component box 133 includesadjustable filter 132, detector 134 and error calculator 136; componentbox 135 includes processor 138; and component box 137 includesaccumulator 140 and adaptation control 142. Component boxes 133 and 135may be implemented as digital circuits, analog circuits or a combinationof digital and analog circuits. Component box 137 may be implemented asa digital circuit, analog circuit, software or a combination of thepreceding.

[0040] The components of component box 133 operate at the speed of thechannel through which the signal is received. Since the error is sampledat a particular interval before entering component box 135, processor138 operates at a slower speed than the speed of the components ofcomponent box 133. Moreover, since accumulator 140 must wait to receivemultiple cross-correlated data points from sampled error and detectoroutput, the components of component box 137 operate at a slower speedthan the speed of the components of component box 135.

[0041] Because adaptive equalization system 130 provides compensationfrom signal processing based on vectors produced from scalar data (asopposed to vectors produced from vector data all the time as illustratedin FIGS. 2 and 3), the circuitry of the system may be less complex.Moreover, the amount of hardware may be reduced as well. For example,adaptive equalization system 130 may not need a shift register forsignal processing that would operate at the full speed of the channelthrough which the signal is received.

[0042]FIG. 5 illustrates an adaptive equalization system 60 utilizing anaccumulator 80 for producing vector output, in accordance with anotherembodiment of the present invention. Adaptive equalization system 60utilizes accumulator 80 to produce a vector output for cross-correlationwith error instead of using a shift register as used by adaptiveequalization system 40 of FIG. 3. Adaptive equalization system 60 alsoincludes sampling switch 62, adjustable filter 64, detector 66, targetresponse filter 68, summation node 70, subsampling switches 72, pulsegenerator 74, multiplication node 76, low-pass filter 78, adaptationmatrix 82 and integrator bank 84.

[0043] Adaptive equalization system 60 receives a transmitted datasequence that has passed through channel 61. In this embodiment,sampling switch 62 is located between channel 61 and adjustable filter64. Thus, after the data sequence a_(k) is transmitted over channel 61,the received signal y(t) is sampled at sampling switch 62 at samplingtime t=kT to yield a sampled y_(k). Sampled signal y_(k) entersadjustable filter 64 which compensates for distortion caused by channel61.

[0044] The signal then enters detector 66 which recovers the originalnoiseless data sequence â_(k). Target response filter 68 calculates anexpected sampled predetection signal {circumflex over (d)}_(k), or thesignal that is expected to be output from adjustable filter 64. Atsummation node 70, the sampled signal {tilde over (d)}_(k) is subtractedfrom the expected sampled predetection signal {circumflex over (d)}_(k)to yield an error e_(k), which may comprise an amplitude error of thetransmitted signal. Error e_(k) is a scalar error.

[0045] The error e_(k) is sampled at subsampling switch 72 a at samplingtime k=iN to yield subsampled scalar error e_(i). Subsampling switch 72b subsamples original noiseless data sequence â_(k) from detector 66 atsampling time k=iN−j to yield subsampled noiseless data sequenceâ_(i,j), where N represents a sub-sampling rate, i corresponds to theindex of the sub-sampled data series and j represents a sub-samplingphase corresponding to the index of the cross-correlation vectorproduced by accumulator 80. Thus, â_(i,j) refers to â_(0N−j), â_(1N−j),â_(2N−j), â_(3N−j) . . . â_(iN−j) . . . and is scalar data. Pulsegenerator 74 produces a subsampling pulse for subsampling switches 72 aand 72 b. Accumulator 80 provides phase control to control pulsegenerator 74 and the value of j. The value of index j will cycle throughcount values to produce a vector of a particular length. For example, toproduce a vector of three elements at accumulator 80, index j may cyclethrough values 0, 1 and 2. Thus, j is a delay that is the differencebetween the phases at which subsampling switches 72 a and 72 b operate.

[0046] At multiplication node 76, the subsampled error e_(i) ismultiplied by the subsampled noiseless data sequence â_(i,j) to yielde_(i)*â_(i,j), which is sent to low-pass filter 78. Low-pass filter 78takes an average of multiple values of e_(i)*â_(i,j) for each value ofj. For example, if j=0, low-pass filter 78 averages multiple data pointse_(0N)*â_(0N−0), e_(1N)*â_(1N−0), e_(2N)*â_(2N−0), . . .e_(nN)*â_(nN−1), . . . . If j=1, low-pass filter 78 averages multipledata points e_(0N)*â_(0N−1), e_(1N)*â_(1N−1), e_(2N)*â_(2N−1), . . .e_(nN)*â_(nN−2), . . . . If j=2, low-pass filter 78 averages multipledata points e_(0N)*â_(0N−2), e_(1N)*â_(1N−2), e_(2N)*â_(2N−2), . . .e_(nN)*â_(nN−2), . . . . Low-pass filter 78 yields E[e_(i)*â_(i,j)],which is sent to accumulator 80. This process is repeated for each valueof j.

[0047] Accumulator 80 accumulates E[e_(i)*â_(i,j),] for each value of jand produces a vector output E[e_(k)*{circumflex over (a)}_(k)] which issent to adaptation matrix 82. As stated above, accumulator 80 controlsj, and the values of j correspond to the length of the vector producedby accumulator 80. Such length should be long enough to observe most ofthe ISI caused by channel 61. For example, if the pre-cursor ISI, thatis isi before the received symbol, is effectively one symbol long andthe post-cursor ISI, that is ISI after the received symbol, iseffectively four symbols long, the length of the vector produced byaccumulator 80 should be six and the value of index j should cyclethrough values −1, 0, 1, 2, 3, 4.

[0048] Adaptation matrix 82 translates the information regarding theerror of the vector E[ek*ak] into parameters or instructions foradjustable filter 64. Such instructions pass through integrator bank 84which may include a number of integrators corresponding to the length ofa compensation vector c. Integrator bank 84 produces the compensationvector, filter coefficient vector c, which controls adjustable filter 64to adjust the compensation provided by the filter.

[0049] Component boxes 65 and 67 may be implemented as digital circuits,analog circuits or a combination of digital and analog circuits.Component box 69 may be implemented as a digital circuit, analogcircuit, software or a combination of the preceding.

[0050] The components of component box 65 operate at the full speed ofthe channel rate, and the components of component box 67 operate at 1/Nspeed of the channel rate. The components of component box 69 operate ata much lower speed than the channel rate, because accumulator 80 mustwait to receive averages for multiple values of j before producing itsvector output. Thus, subsampling switches 72 a and 72 b enable signalprocessing to occur both in component boxes 67 and 69 at a slower ratethan the full channel rate thus improving the full channel rate.Moreover, because adaptive equalization system 60 provides compensationbased on vectors produced from scalar data (as opposed to vectorsproduced from vector data all the time as illustrated in FIGS. 2 and 3),the circuitry of the system may be less complex, and the necessaryamount of hardware for the system may be reduced.

[0051]FIG. 6 illustrates a network system 150 utilizing adaptiveequalization with feedback control, in accordance with a particularembodiment of the present invention. Network system 150 includes networkelements 152 and 154 coupled together by a channel 156 through which asignal may be communicated. Network element 152 includes a transmitter158, and network element 154 includes a receiver 160. Transmitter 158includes adjustable filter 164 and feedback monitor 167. Thus,adjustable filter 164 is positioned before channel 156. Adjustablefilter 164 provides error compensation to a signal transmitted throughchannel 156. Receiver 160 includes adaptive equalization components 162that process a received signal to determine instructions or controlparameters for adjustable filter 164.

[0052] Network system 150 includes feedback control 166 to communicatethe adjustable filter instructions or control parameters determined byadaptive equalization components 162 to adjustable filter 164 usingfeedback monitor 167 so that transmitter 158 may provide pre-emphasis toa signal through adjustable filter 164 to compensate for expecteddistortions. Feedback control 166 may communicate other information totransmitter 158 as well. In particular embodiments, feedback control 166may communicate information so that transmitter 158 may providehigh-resolution control of its output. The feedback control mechanism ofnetwork system 150 may be implemented by any of a number of ways knownto one skilled in the art. For example, the control information may becommunicated back to transmitter 158 through channel 156. Thus, the useof feedback control 166 enables transmitter 158 to provide pre-emphasisand high resolutions control of its output based on error informationdetermined by receiver 160. Therefore, efficiency of network system 150may be improved.

[0053]FIG. 7 illustrates an adaptive equalization system 100 utilizingan accumulator and feedback control, in accordance with anotherembodiment of the present invention. In this embodiment, an adjustablefilter 102 is located before a channel 104 over which a data sequence isto be transmitted. Adjustable filter 102 may be located in a transmitterwhile other signal processing components may be located in a receiverthat receives the transmitted signal after it has passed through thechannel. Feedback control may be provided from the receiver to afeedback monitor of the transmitter so that error information producedby signal processing components of the receiver may be utilized byadjustable filter 102 to provide compensation in the signal beforetransmission. Moreover, in this embodiment error calculation isperformed after subsampling, as also described with respect to adaptiveequalization system 40 of FIG. 3.

[0054] Adaptive equalization system 100 also includes sampling switch106, detector 108, target response filter 110, subsampling switches 112,pulse generator 114, summation node 116, multiplication node 118,low-pass filter 120, accumulator 122, adaptation matrix 124 andintegrator bank 126.

[0055] As stated above, adjustable filter 102 provides compensation to adata sequence a_(k) to be transmitted over channel 104. The datasequence is sampled at sampling switch 106 at sampling time t=kT toyield a sampled signal {tilde over (d)}_(k).

[0056] The signal enters detector 108 which recovers the originalnoiseless data sequence â_(k). Target response filter 110 calculates anexpected sampled predetection signal {circumflex over (d)}_(k), or thesignal that is expected to be received over channel 104.

[0057] Subsampling switch 112 a subsamples the sampled signal {tildeover (d)}_(k) at sampling time k=iN to generate subsampled signal {tildeover (d)}_(k). Subsampling switch 112 b subsamples the expected sampledpredetection signal {circumflex over (d)}_(k) at sampling time k=iN togenerate expected subsampled predetection signal {circumflex over(d)}_(i). At summation node 116, the subsampled signal {tilde over(d)}_(i) is subtracted from the expected subsampled signal {circumflexover (d)}_(i) to yield scalar error e_(i). Thus, error e_(i) is thedifference between the actual subsampled signal and the expectedsubsampled signal.

[0058] Subsampling switch 112 c subsamples the output of detector 66,original noiseless data sequence â_(k), at sampling time k=iN−j to yieldsubsampled noiseless data sequence â_(i,j) which is scalar data. Thus, jis a delay that is the difference between the phases at whichsubsampling switches 112 b and 112 c operate. Pulse generator 114produces a subsampling pulse for subsampling switches 112 a, 112 b and112 c. The value of j corresponds to the index of the cross-correlationvector produced by accumulator 122. Accumulator 122 provides phasecontrol to control pulse generator 114 and the value of j.

[0059] At multiplication node 118, the subsampled scalar error e_(i) ismultiplied by the subsampled noiseless data sequence â_(i,j) to yielde_(i)*â_(i,j), which is sent to low-pass filter 120. Low-pass filter 120takes an average of multiple values of e_(i)*â_(i,j) for each value of jand yields E[e_(i)*â_(i,j)], which is sent to accumulator 122.

[0060] Accumulator 122 accumulates E[e_(i)*â_(i,j)] for each value of jand produces a vector output E[e_(k)*{circumflex over (a)}_(k)] which issent to adaptation matrix 124. Adaptation matrix 124 translates theinformation regarding the error of the vector E[e_(k)*{circumflex over(a)}_(k)] into parameters or instructions for adjustable filter 102.Such instructions pass through integrator bank 126, which may include anumber of integrators corresponding to the length of a compensationvector c. Integrator bank 126 produces the compensation vector, filtercoefficient vector C, that controls adjustable filter 102 to adjust thecompensation provided by the filter. Feedback control is utilized tocommunicate the control parameters of adjustable filter 102 back to thefilter which is located in a transmitter so that the data sequence maybe compensated before transmission through channel 104.

[0061] In particular embodiments, feedback control may communicate otherinformation back to the transmitter. For example, feedback control maycommunicate intermediate information back to the transmitter. Suchintermediate information may include the output of the accumulator orthe output of the adaptation matrix. In such cases, some components suchas the adaptation matrix and/or the integrator bank may be located atthe transmitter for calculation of the control parameters for theadjustable filter. In some cases, the error e_(i) may be communicatedfrom the receiver to the transmitter using feedback control, andsubsequent operations for calculating the control parameters for theadjustable filter may be performed at the transmitter.

[0062] Component boxes 111 and 113 may be implemented as digitalcircuits, analog circuits or a combination of digital and analogcircuits. Component box 115 may be implemented as a digital circuit,analog circuit, software or a combination of the preceding.

[0063] The components of component box 111 operate at the full speed ofthe channel rate, and the components of component box 113 operate at 1/Nspeed of the channel rate. The components of component box 115 operateat a much lower speed than the channel rate, because accumulator 122must wait to receive averages for multiple values of j before producingits vector data output. Thus, subsampling switches 112 a, 112 b and 112c enable signal processing to occur both in component boxes 113 and 115at a slower speed than the speed of the signal transmitted through thechannel thus improving the full channel speed. Moreover, becauseadaptive equalization system 100 provides compensation based on vectorsproduced from scalar data (as opposed to vectors produced from vectordata all the time as illustrated in FIGS. 2 and 3), the circuitry of thesystem may be less complex, and the necessary amount of hardware for thesystem may be reduced.

[0064] It should be understood that particular embodiments may includean adaptive equalization system similar to that illustrated in FIG. 7but with the adjustable filter located after the channel, for examplewith the adjustable filter located within a receiver that receives thesignal transmitted through the channel. Particular embodiments may alsoinclude an adaptive equalization system utilizing an adjustable filterdivided into two filters, one in the transmitter and another in thereceiver.

[0065]FIG. 8 is a flow chart illustrating a method 200 for providingerror compensation to a signal using feedback control, in accordancewith an embodiment of the present invention. The method begins at step202, where error adjustment is provided to a signal at a transmitter.The error adjustment may be provided at an adjustable filter of thetransmitter. At step 204, the signal is communicated over the channel ata channel speed.

[0066] At step 206, the signal is received from the channel at thechannel speed. At step 208, the signal is sampled at a speed less thanthe channel speed to yield a sampled signal. In particular embodiments,the signal may be sampled at a sampling switch at a speed that is{fraction (1/32)} of the channel speed. At step 210, error associatedwith the signal is determined. The error may comprise an amplitude erroror residual intersymbol interference. The error may be determined bydetermining a difference between a sampled noisy signal and a sampledexpected noiseless signal generated by a target response filter. Inparticular embodiments, the error may then be sampled for subsequentprocessing.

[0067] At step 212, compensation information is determined at a speedless than the channel speed. The compensation information is based onthe error and may be determined at an adaptation control that includesan adaptation matrix and an integrator bank. The compensationinformation may comprise a compensation vector for use by the adjustablefilter in providing adjustment to the signal distortion. Particularembodiments may utilize an accumulator that accumulates a plurality ofdata points of the received signal cross-correlated with the error andforms a cross-correlation vector from the cross-correlated data pointsat the compensation speed, which may be less than the speed at which thesignal is sampled since the accumulator waits on a plurality ofcross-correlated data points before forming the cross-correlationvector. The accumulator may control a pulse generator to aid in thisprocess and may receive a plurality of averages of cross-correlated datapoints for the cross-correlation vector from a low-pass filter. Thecompensation information that is determined is based on thecross-correlation vector and may be used to provide the error adjustmentat the adjustable filter.

[0068] At step 214, information is communicated back to the transmitterfor providing error adjustment. Such communication may be performed byfeedback control which is operable to communicate information from thereceiver at which the signal is received to the transmitter thattransmits the signal. The feedback information may be communicated to afeedback monitor of the transmitter for use by the adjustable filter.The communicated information may comprise the compensation informationso that the error adjustment may be provided to the signal at thetransmitter.

[0069] In particular embodiments, steps 212 and 214 may be swapped ormerged. For example, in such cases the information communicated to thetransmitter may comprise the determined error or other intermediateinformation such as the output of the accumulator or the adaptationmatrix. In such cases, the compensation information for the adjustablefilter may be determined from the intermediate information at thetransmitter.

[0070] Steps may be modified, added or omitted without departing fromthe scope of the invention. Additionally, steps may be performed in anysuitable order without departing from the scope of the invention.

[0071] Although the present invention has been described in detail,various changes and modifications may be suggested to one skilled in theart. It is intended that the present invention encompass such changesand modifications as falling within the scope of the appended claims.

What is claimed is:
 1. A method for providing error compensation to asignal, comprising: providing error adjustment to a signal at atransmitter; communicating the signal over a channel at a channel speed;receiving the signal from the channel at the channel speed; sampling thesignal at a speed less than the channel speed to yield a sampled signal;determining an error associated with the signal; determiningcompensation information for providing the error adjustment, thecompensation information based on the error, and the compensationinformation determined at a compensation speed, the compensation speedless than the channel speed; and communicating information to thetransmitter for providing error adjustment.
 2. The method of claim 1,wherein communicating information to the transmitter comprisescommunicating the compensation information to the transmitter.
 3. Themethod of claim 1, wherein: communicating information to the transmittercomprises communicating intermediate information to the transmitter; anddetermining compensation information comprises determining compensationinformation from the intermediate information.
 4. The method of claim 3,wherein the intermediate information comprises the error associated withthe signal.
 5. The method of claim 1, wherein the compensation speed isless than the speed at which the signal is sampled.
 6. The method ofclaim 1, wherein: the sampled signal comprises a sampled noisy signal;and determining an error associated with the signal comprises:determining a sampled expected noiseless signal at a target responsefilter; and determining the difference between the sampled noisy signaland the sampled expected noiseless signal to determine the error.
 7. Themethod of claim 1, wherein the speed at which the signal is sampled isapproximately {fraction (1/32)} of the channel speed.
 8. The method ofclaim 1, wherein determining an error associated with the signalcomprises determining an amplitude error associated with the signal. 9.The method of claim 1, further comprising: accumulating a plurality ofcross-correlated data points of the received signal cross-correlatedwith the error; forming a cross-correlation vector from thecross-correlated data points at the compensation speed, the compensationspeed less than the speed at which the signal is sampled; and whereinthe compensation information is based on the cross-correlation vector.10. A system for providing error compensation to a signal, comprising:an adjustable filter positioned before a channel, the adjustable filteroperable to provide error adjustment to a signal; a transmitter operableto communicate the signal over the channel at a channel speed; areceiver operable to receive the signal from the channel at the channelspeed; a sampling switch operable to sample the signal at a speed lessthan the channel speed to yield a sampled signal; an error calculatoroperable to determine an error associated with the signal; adaptationcontrol operable to determine compensation information for providing theerror adjustment, the compensation information based on the errordetermined by the error calculator, and the adaptation control operableto determine the compensation information at a compensation speed, thecompensation speed less than the channel speed; and feedback controloperable to communicate information to the adjustable filter forproviding error adjustment.
 11. The method of claim 10, wherein feedbackcontrol operable to communicate information to the adjustable filtercomprises feedback control operable to communicate the compensationinformation to the adjustable filter.
 12. The method of claim 10,wherein: feedback control operable to communicate information to theadjustable filter comprises feedback control operable to communicateintermediate information to the adjustable filter; and adaptationcontrol operable to determine compensation information comprisesadaptation control operable to determine compensation information fromthe intermediate information.
 13. The method of claim 12, wherein theintermediate information comprises the error associated with the signal.14. The system of claim 10, wherein the compensation speed is less thanthe speed at which the signal is sampled.
 15. The system of claim 10,wherein: the sampling switch is operable to sample the signal to yield asampled noisy signal; and the error calculator is operable to: determinea sampled expected noiseless signal at a target response filter; anddetermine the difference between the sampled noisy signal and thesampled expected noiseless signal to determine the error.
 16. The systemof claim 10, wherein the sampling switch is operable to sample thesignal at a speed that is approximately {fraction (1/32)} of the channelspeed.
 17. The system of claim 10, wherein the error calculator isoperable to determine an amplitude error associated with the signal. 18.The system of claim 10, further comprising: an accumulator operable to:accumulate a plurality of cross-correlated data points of the receivedsignal cross-correlated with the error; and form a cross-correlationvector from the cross-correlated data points at the compensation speed,the compensation speed less than the speed at which the signal issampled by the sampling switch; and wherein the adaptation control isoperable to determine compensation information for the error adjustmentbased on the cross-correlation vector.
 19. A logic for providing errorcompensation to a signal, the logic embedded in a medium and operableto: provide error adjustment to a signal at a transmitter; communicatethe signal over a channel at a channel speed; receive the signal fromthe channel at the channel speed; sample the signal at a speed less thanthe channel speed to yield a sampled signal; determine an errorassociated with the signal; determine compensation information forproviding the error adjustment, the compensation information based onthe error, and the compensation information determined at a compensationspeed, the compensation speed less than the channel speed; andcommunicate information to the transmitter for providing erroradjustment.
 20. The logic of claim 19, logic operable to communicateinformation to the transmitter comprises logic operable to communicatethe compensation information to the transmitter.
 21. The logic of claim19, wherein: logic operable to communicate information to thetransmitter comprises logic operable to communicate intermediateinformation to the transmitter; and logic operable to determinecompensation information comprises logic operable to determinecompensation information from the intermediate information.
 22. Thelogic of claim 19, wherein the intermediate information comprises theerror associated with the signal.
 23. The logic of claim 19, wherein thecompensation speed is less than the speed at which the signal issampled.
 24. The logic of claim 19, further operable to: accumulate aplurality of cross-correlated data points of the received signalcross-correlated with the error; form a cross-correlation vector fromthe cross-correlated data points at the compensation speed, thecompensation speed less than the speed at which the signal is sampled;and wherein the compensation information is based on thecross-correlation vector.
 25. A system for providing error compensationto a signal, comprising: means for providing error adjustment to asignal before a channel; means for communicating the signal over thechannel at a channel speed; means for receiving the signal from thechannel at the channel speed; means for sampling the signal at a speedless than the channel speed to yield a sampled signal; means fordetermining an error associated with the signal; means for determiningcompensation information for providing the error adjustment, thecompensation information based on the error, and the compensationinformation determined at a compensation speed, the compensation speedless than the channel speed; and means for communicating information tothe means for providing error adjustment.
 26. The system of claim 25,wherein means for communicating information to the means for providingerror adjustment comprises means for communicating the compensationinformation to the means for providing error adjustment.
 27. A methodfor providing error compensation to a signal, comprising: providingerror adjustment to a signal at an adjustable filter positioned before achannel; communicating the signal over the channel at a channel speed;receiving the signal from the channel at the channel speed; sampling thesignal at a speed less than the channel speed to yield a sampled noisysignal; determining a sampled expected noiseless signal at a targetresponse filter; determining the difference between the sampled noisysignal and the sampled expected noiseless signal to determine anamplitude error associated with the signal; accumulating a plurality ofcross-correlated data points of the signal cross-correlated with theamplitude error; forming a cross-correlation vector from thecross-correlated data points at a compensation speed, the compensationspeed less than the speed at which the signal is sampled; determining acompensation vector for providing the error adjustment at the adjustablefilter, the compensation vector based on the cross-correlation vector,and the compensation vector determined at the compensation speed; andcommunicating the compensation vector to the adjustable filter forproviding error adjustment.